package com.fishery.refrigeratory.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.fishery.refrigeratory.entity.Refrigeratory;
import com.fishery.refrigeratory.entity.RefrigeratoryInInfo;
import com.fishery.refrigeratory.entity.RefrigeratoryOutInfo;
import com.fishery.refrigeratory.entity.vo.OrderAndProductVo;
import com.fishery.refrigeratory.entity.vo.OrderVo;

import java.util.List;

public interface RefrigeratoryOutInfoService extends IService<RefrigeratoryOutInfo> {
    //根据冷库id查询冷库的出库信息
    List<RefrigeratoryOutInfo> selectInfoBytRefrigeratoryId(String refrigeratoryId);
    //根据冷库id分页查询冷库的出库信息
    Page<RefrigeratoryOutInfo> selectPageInfoByRefrigeratoryId(String refrigeratoryId, Integer page, Integer size);
    //根据基地id查询冷库的出库信息
    List<RefrigeratoryOutInfo> selectInfoByBaseId(List<Refrigeratory> refrigeratoryList);
    //根据基地id分页查询冷库的出库信息
    Page<RefrigeratoryOutInfo> selectPageInfoByBaseId(List<Refrigeratory> refrigeratoryList, Integer page, Integer size);
    //查询所有出库信息（不限于基地和冷库）
    List<RefrigeratoryOutInfo> selectAllInfo();
    //分页查询所有出库信息（不限于基地和冷库）
    Page<RefrigeratoryOutInfo> selectPageAllInfo(Integer page, Integer size);
    //通过冷库入库编号id查看该批次的出库信息（为了溯源,查看当前订单分批流向的出库信息）
//    List<RefrigeratoryOutInfo> selectInfoByrefrigeratoryInId(String id);
//    //通过冷库出库编号id查看该编号对应的入库编号（溯源）
//    RefrigeratoryOutInfo selectInfoByrefrigeratoryOutId(String id);
//    //通过产品编号id查看冷库出库信息是否存在
//    RefrigeratoryOutInfo searchRefrigeratoryById(String productId);
//    //修改出库记录
    int updateOutInfo(RefrigeratoryOutInfo refrigeratoryOutInfo);
    //创建出库记录
    int insertOutInfo(RefrigeratoryOutInfo refrigeratoryOutInfo);
    //删除出库记录
    int deleteOutIno(String id);
//    //创建订单
//    Boolean createOrder(OrderAndProductVo orderAndProductVo);
//    //创建订单自动调用库存
//    Boolean createOutInfo(OrderVo orderVo);
}
